#ifndef DYNAMIC_ENTITY_PRIVATE_H
#define DYNAMIC_ENTITY_PRIVATE_H
#include "DynamicEntity.h"

#define SET_DYNAMIC_ENTITY_BLOCK \
    virtual void setGeoPoint(const QVector3D& point){geoPoint = point;}\
    QVector3D getGeoPoint()const {return geoPoint;}\
    virtual void setLon(double lon) {geoPoint.setX(lon);}\
    double getLon()const {return geoPoint.x();}\
    virtual void setLat(double lat) {geoPoint.setY(lat);}\
    double getLat()const{return geoPoint.y();}\
    virtual void setAlt(double alt){geoPoint.setZ(alt);}\
    double getAlt()const{return geoPoint.z();}\
    virtual void setHeading(double heading){hpr.setX(heading);}\
    double getHeading()const { return hpr.x(); }\
    virtual void setPitch(double pitch) {hpr.setY(pitch);}\
    double getPitch()const { return hpr.y(); }\
    virtual void setRoll(double roll) { this->hpr.setZ(roll); }\
    double getRoll()const { return hpr.z(); }\
public:\
	virtual void setScale(double scale) { this->scale = scale; }\
	double getScale()const{ return scale; }\
private:\
	QVector3D geoPoint;\
	QVector3D hpr;\
	double defaultScale = 1.0;\
	double scale = 1.0;

#endif